/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package agenda.bean;

import java.util.Date;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Antonio
 */
public class Contato {
    private Integer id;
    private String nome;
    private Date dataNascimento;
    private String endereco;
    private Cidade cidade;
    private List<Telefone> telefones;

    public Contato() {
        id = 0;
        nome = "";
        dataNascimento = null;
        endereco = "";
        cidade = new Cidade();
        telefones = new ArrayList<Telefone>();
    }

    @Override
    public String toString() {
        return nome + " - " + cidade;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final Contato other = (Contato) obj;
        if (this.id != other.id && (this.id == null || !this.id.equals(other.id))) {
            return false;
        }
        return true;
    }

    public Cidade getCidade() {
        return cidade;
    }

    public void setCidade(Cidade cidade) {
        this.cidade = cidade;
    }

    public Date getDataNascimento() {
        return dataNascimento;
    }

    public void setDataNascimento(Date dataNascimento) {
        this.dataNascimento = dataNascimento;
    }

    public String getEndereco() {
        return endereco;
    }

    public void setEndereco(String endereco) {
        this.endereco = endereco;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public List<Telefone> getTelefones() {
        return telefones;
    }

    public void addTelefone(Telefone telefone) {
        telefone.setContato(this);
        telefones.add(telefone);
    }

    public void addTelefone(String numero, String descricao) {
        Telefone t = new Telefone(this);
        t.setNumero(numero);
        t.setDescricao(descricao);
        addTelefone(t);
    }

    public void removeTelefone(Telefone telefone) {
        telefones.remove(telefone);
    }

}



















